<!DOCTYPE html>
<html lang="zh-Hans">

<head>
  <head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <meta name="author" content="viggo" />
  <title>OpenBlog - </title>
  <meta name="keywords" content="">
  <meta name="description" content="">
  <link rel="shortcut icon" href="/OpenBlog/favicon.ico">
  
<link rel="stylesheet" href="/OpenBlog/css/hclonely.css">
<link rel="stylesheet" href="//fonts.loli.net/css?family=Arimo:400,700,400italic.css">
<link rel="stylesheet" href="/OpenBlog/css/fonts/linecons/css/linecons.min.css">
<link rel="stylesheet" href="/OpenBlog/css/fonts/fontawesome/css/all.min.css">
<link rel="stylesheet" href="/OpenBlog/css/bootstrap.min.css">
<link rel="stylesheet" href="/OpenBlog/css/xenon-core.min.css">
<link rel="stylesheet" href="/OpenBlog/css/xenon-components.min.css">
<link rel="stylesheet" href="/OpenBlog/css/xenon-skins.min.css">
<link rel="stylesheet" href="/OpenBlog/css/nav.min.css">

  
<script src="/OpenBlog/js/jquery-1.11.1.min.js"></script>

  <script>
    var userDefinedSearchData = {"custom":false,"thisSearch":"https://www.baidu.com/s?wd=","thisSearchIcon":"url(https://www.baidu.com/favicon.ico)","hotStatus":true,"data":[{"name":"百度","img":"url(https://www.baidu.com/favicon.ico)","url":"https://www.baidu.com/s?wd="}]};
    var expandAll = false;
  </script>
  
<script src="/OpenBlog/js/header.js"></script>

  <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
  <!--[if lt IE 9]>
        
<script src="/OpenBlog/js/html5shiv.min.js"></script>

        
<script src="/OpenBlog/js/respond.min.js"></script>

    <![endif]-->
  <!-- / FB Open Graph -->
  <meta property="og:type" content="article">
  <meta property="og:url" content="https://guqiao.gitee.io/OpenBlog/2021/12/06/Android%E8%B5%84%E6%BA%90/index.html">
  <meta property="og:title" content="OpenBlog - ">
  <meta property="og:description" content="">
  <meta property="og:site_name" content="OpenBlog - ">
  
  <meta property="og:image" content="/images/webstack_banner_cn.png">
  
  <!-- / Twitter Cards -->
  <meta name="twitter:card" content="summary_large_image">
  <meta name="twitter:title" content="OpenBlog - ">
  <meta name="twitter:description" content="">
  
  <meta name="twitter:image" content="/images/webstack_banner_cn.png">
  
  
  <!-- 直接添加html内容即可 -->
<!-- 可设置多行 -->
  
<meta name="generator" content="Hexo 6.3.0"></head>

</head>

	 
    <article class="page text-center">
    <div id="post-meta-m">
        <h3>Android资源</h3>
    </div>
    <div class="article-m">
    <div class="post-toc text-left">
        
    </div>
    <div id="article" class="markdown-body textretty text-left" style="padding-left:32px;padding-right=32px;font-size:20px;">
        <h2 id="性能优化"><a href="#性能优化" class="headerlink" title="性能优化"></a>性能优化</h2><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/E1A3PGgD4h6wbpTkTIdZHA">性能优化经验分享</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/BNDBgVHfPq0WpFs1g_xmoA">探索Android卡顿优化</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/heBoKE2UqMgp4_zm_fciuA">AspectJ性能优化</a></p>
<p><a target="_blank" rel="noopener" href="https://www.androidperformance.com/2018/05/07/Android-performance-optimization-skills-and-tools/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io">Android性能优化必知必会</a></p>
<p><a target="_blank" rel="noopener" href="https://project-awesome.org/">awesomeProject</a></p>
<p><a target="_blank" rel="noopener" href="https://android-developers.googleblog.com/">googleAndroidBlog</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/4WNTi-c-1HWa8wSMsKTY-g">Android系统内存耗用</a></p>
<p><a target="_blank" rel="noopener" href="http://mp.weixin.qq.com/s?__biz=MzI0MjE3OTYwMg==&mid=2649551453&idx=1&sn=137760b2785507c8c41e26ae9f658570&chksm=f1181920c66f90363319327d16cd22868181e7a9d8f1c026ef4a35aa9f2c992da5ad818b8692&scene=0#rd">浅谈App性能优化</a></p>
<p><a target="_blank" rel="noopener" href="https://developer.android.google.cn/studio/profile">GoogleAndroid分析应用性能</a></p>
<h2 id="Fragment"><a href="#Fragment" class="headerlink" title="Fragment"></a>Fragment</h2><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/bBdzJMzRoBDUVeeLFd4z2w">Fragment懒加载</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/_QEloSDCC9KbH4Cj1rU8OQ">AndroidX来袭，Fragment可见性监听方案</a></p>
<h2 id="JNI-x2F-NDK-x2F-CMAKE"><a href="#JNI-x2F-NDK-x2F-CMAKE" class="headerlink" title="JNI&#x2F;NDK&#x2F;CMAKE"></a>JNI&#x2F;NDK&#x2F;CMAKE</h2><p><a target="_blank" rel="noopener" href="https://blog.csdn.net/banketree/article/details/40535325">JNI实战全面解析</a></p>
<p><a target="_blank" rel="noopener" href="https://dev.gameres.com/program/unity3dmanual/script/androidjni/AndroidJNI.html">Android JNI</a></p>
<p><a target="_blank" rel="noopener" href="https://glumes.com/post/android/cmake-best-practices/">CMake必知必会</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/HBYPzW7NP57u_RoXVm_UdQ">JNI NDK入门详解(较清晰)</a></p>
<p><a target="_blank" rel="noopener" href="https://www.cnblogs.com/yidijimao/archive/2020/12/03/14077775.html">NDK&amp;JNI开发总结</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/jIaNpMi-D-e13vQCbiJyNA">在Android中使用CMake你所需要了解的一切</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/bUgfzBcE0Gmx0weB-NTujw">使用CMake方式进行JNI&#x2F;NDK开发</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/Rc61XmAegFcJ9oHAooNyAQ">用 Asan 提前解决 NDK 疑难 crash</a></p>
<p><a target="_blank" rel="noopener" href="https://www.cnblogs.com/blogs-of-lxl/p/11402867.html">CMake开发指南</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/QTxEQg4s5ummtFNe8vRIvA">CMake编译使用</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/352849041">CMake入门教程</a></p>
<p><a target="_blank" rel="noopener" href="https://cmake.org/">CMake官网</a></p>
<p><a target="_blank" rel="noopener" href="https://riptutorial.com/Download/cmake.pdf">CMake PDF</a></p>
<p><a target="_blank" rel="noopener" href="https://johnlamp.net/files/CMakeTutorial.pdf">CMake Tutorial</a></p>
<p><a target="_blank" rel="noopener" href="https://developer.android.google.cn/training/articles/perf-jni#java">jni</a></p>
<p><a target="_blank" rel="noopener" href="https://expertise.jetruby.com/android-ndk-using-c-c-native-libraries-to-write-android-apps-21550cdd86a">Android NDK:Using C&#x2F;C++</a></p>
<p><a target="_blank" rel="noopener" href="http://android-plus-plus.com/">AndroidPlusPlus</a></p>
<p><a target="_blank" rel="noopener" href="https://gavinliu6.github.io/CMake-Practice-zh-CN/#/">CMake Practice</a></p>
<p><a target="_blank" rel="noopener" href="https://project-awesome.org/onqtam/awesome-cmake">awesome-Cmake</a></p>
<p><a target="_blank" rel="noopener" href="https://zhjwpku.com/category/2020/04/04/effective-modern-cmake-practice.html">effective-modern-cmake-practice</a></p>
<p><a target="_blank" rel="noopener" href="https://www.cnblogs.com/blogs-of-lxl/p/11402867.html">Android CMake开发指南</a></p>
<p><a target="_blank" rel="noopener" href="https://www.jianshu.com/p/c71ec5d63f0d">Cmake使用</a></p>
<p><a target="_blank" rel="noopener" href="https://developer.android.google.cn/ndk/guides/cpp-support.html">https://developer.android.google.cn/ndk/guides/cpp-support.html</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/76975231">https://zhuanlan.zhihu.com/p/76975231</a></p>
<p><a target="_blank" rel="noopener" href="https://developer.android.google.cn/studio/projects/configure-cmake?hl=zh-cn">https://developer.android.google.cn/studio/projects/configure-cmake?hl=zh-cn</a></p>
<p><a target="_blank" rel="noopener" href="https://cmake.org/">https://cmake.org/</a></p>
<p><a target="_blank" rel="noopener" href="https://www.cctry.com/">https://www.cctry.com/</a></p>
<p><a target="_blank" rel="noopener" href="https://developer.android.google.cn/ndk/guides/stable_apis">https://developer.android.google.cn/ndk/guides/stable_apis</a></p>
<p><a target="_blank" rel="noopener" href="https://developer.android.google.cn/ndk/reference">https://developer.android.google.cn/ndk/reference</a></p>
<p><a target="_blank" rel="noopener" href="https://www.jb51.net/article/130786.htm">JNI开发的三种方式</a></p>
<p><a target="_blank" rel="noopener" href="https://www.cnblogs.com/rocomp/p/4892866.html">JNI本地编程</a></p>
<h2 id="自定义View"><a href="#自定义View" class="headerlink" title="自定义View"></a>自定义View</h2><p><a target="_blank" rel="noopener" href="https://rengwuxian.com/ui-1-1/">henCoder</a></p>
<h3 id="AigeStudio"><a href="#AigeStudio" class="headerlink" title="AigeStudio"></a>AigeStudio</h3><p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/41212583">1.自定义控件其实很简单1&#x2F;12</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/41316141">2.自定义控件其实很简单1&#x2F;6</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/41447349">3.自定义控件其实很简单1&#x2F;4</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/41799811">4.自定义控件其实很简单1&#x2F;3</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/41960507">5.自定义控件其实很简单5&#x2F;12</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/42677973">6.自定义控件其实很简单1&#x2F;2</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/42989325">7.自定义控件其实很简单7&#x2F;12</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/43378131">8.自定义控件其实很简单2&#x2F;3</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/aigestudio/article/details/43907299">9.自定义控件其实很简单3&#x2F;4</a></p>
<h3 id="扔物线"><a href="#扔物线" class="headerlink" title="扔物线"></a>扔物线</h3><p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/27787919">1.1绘制基础</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/27919855">1.2 Paint 详解</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/28077890">1.3 文字的绘制</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/28300528">1.4 Canvas 对绘制的辅助</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/28499694">1.5 绘制顺序</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/29094369">1.6 属性动画（上手篇）</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/29231600">1.7 属性动画（进阶篇）</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/29430145">1.8 硬件加速</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/30764107">2.1 布局基础</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/32414322">2.2 全新定义 View 的尺寸</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/32957168">2.3 定制 Layout 的内部布局</a></p>
<p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/37927702">3.1 触摸反馈</a></p>
<h3 id="微信公众号自定义控件"><a href="#微信公众号自定义控件" class="headerlink" title="微信公众号自定义控件"></a>微信公众号自定义控件</h3><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/aMkN9L7PaVhkEyY7ii7Mfg">Android自定义控件</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/Mogzk5bOhnekBhU7in0D7Q">Android自定义控件探索</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/bo6yARLZE7vsMt5U_4Im2w">自定义ScaleLayout</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/i9iXNLDATG7_GBBe_IM4qg">自定义控件图形探索</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/IGA1yWouFm8E8Eeef_9XOg">自定义View</a></p>
<p><a target="_blank" rel="noopener" href="https://juejin.cn/post/6844903909320835080">Android View机制设计与实现：测量流程</a></p>
<p><a target="_blank" rel="noopener" href="http://mp.weixin.qq.com/s?__biz=MzAxMTg2MjA2OA==&mid=2649843337&idx=1&sn=ba9d6e61d5cff4f0ab83a70965d9ea0c&chksm=83bf6fd2b4c8e6c4e6689ef7b31a52f4cf33eadd49ffe822744b4477dd2bfb2ae157a6f519f9&scene=0#rd">你需要掌握的事件分发高阶知识</a></p>
<p><a target="_blank" rel="noopener" href="https://www.cnblogs.com/zl1991/p/6341030.html">Android滑动事件冲突解决</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/duqian291902259/Android-FloatWindow">FloatWindow</a></p>
<h2 id="相机"><a href="#相机" class="headerlink" title="相机"></a>相机</h2><p><a target="_blank" rel="noopener" href="https://developer.android.google.cn/training/camerax">CameraX</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/zhengruilovehyd/article/details/54564948?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1.no_search_link&spm=1001.2101.3001.4242.2">Camera使用总结与那些坑</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/qq_42194101?t=1">Camera开发系列</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/weixin_34092370/article/details/89696073">MIUI Camera</a></p>
<h2 id="音视频"><a href="#音视频" class="headerlink" title="音视频"></a>音视频</h2><p><a target="_blank" rel="noopener" href="https://www.glumes.com/">音视频开发进阶</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/IHCR2HUjBnWCoFl3HkZ5AA">FFMpeg 实现视频编码、解码</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/gNraIa7-fwxC-SUakiIZ2Q">音视频开发入门必备之基础知识</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/gIyl2Yqw94FQ6m_GIXwhAw">你需要知道的：H.264</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/H7EgJhRZDrZuQgL-ZxYHFA">Android 贴心的音视频学习指南来咯</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/96VLRtxrgVYBY692S1OZDw">音视频硬解码篇</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/0voice/audio_video_streaming">音视频相关文章</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/7diVe6HP3lDLaY2U44CHJQ">Android音视频入门项目</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/E20ucf5bfexKYH4R7zK-WA">音轨分离软件spleeter</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/XZGQZ2zHR_AOYQzp9Hcq2w">短视频SDK开发</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/BMkTujaIXTHlOiu-JGg_EA">聊聊SurfaceView和TextureView</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/ZD2b6qOlWXPYeuC-BcxjZg">FFmpeg从入门到精通–进阶篇 SEI那些事儿</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s?__biz=MzAxMTI4MTkwNQ==&mid=2650826247&idx=1&sn=b25846e36cb43ba7ea8b1ce694e9690d&chksm=80b7b299b7c03b8fec61fdf33de9b8e75be4086238a1e34a8cba880bcff23aac33a6686f6481&mpshare=1&scene=2&srcid=0911XkJidRqftbWHddjGVmS3&from=timeline&ascene=2&devicetype=android-25&version=26070239&nettype=WIFI&abtest_cookie=BAABAAoACwASABMABAAjlx4ATpkeAFOZHgBomR4AAAA=&lang=zh_CN&pass_ticket=4oLYm2au9KrI4hHFqsJGA/xp64dIeq4L4H5z4guCldfeTjd41cHURpd0ZWjzl+y4&wx_header=1">Android音视频开发学习之路</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s?__biz=MzU2NTc5Mjg2NA==&mid=2247484898&idx=1&sn=e27bc113093f92f0de54df1f931b1f4e&chksm=fcb71cedcbc095fb98605d4228bb510e9159e4853780a7521965f274a4867b17be6380c6a17d&mpshare=1&scene=1&srcid=0519dMGfzl3n1ChuR8RXqn6h&sharer_sharetime=1652954816482&sharer_shareid=93b885adfe0da089cdf634904fd59f71&version=4.0.6.90540&platform=mac#rd">音视频开发进阶 — 音频要素</a></p>
<h2 id="RecyclerView"><a href="#RecyclerView" class="headerlink" title="RecyclerView"></a>RecyclerView</h2><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/aremn_ES3AHIes0BwQd-ew">RecyclerView体验优化及入坑总结</a></p>
<p><a target="_blank" rel="noopener" href="http://mp.weixin.qq.com/s?__biz=MzI0MjE3OTYwMg==&mid=2649551472&idx=1&sn=cdc773b6883acea2e9656cdd472cba6f&chksm=f118190dc66f901b0e76685def16754b2092a04eb7dbc447bda6454cdd864f5891869ed31df8&scene=0#rd">RecyclerView回收和复用机制分析</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s?__biz=MzA3NzMxODEyMQ==&mid=2666454502&idx=1&sn=5fe389e018bfe9d4d0a142a8b4cee4d3&chksm=8449af60b33e2676e8280fc91b71d357c3b14aaa8d6ac82bbeea7dd48e615fcadc707aad713a&scene=0&xtrack=1#rd">RecyclerView库中你不知道的</a></p>
<h2 id="开源库"><a href="#开源库" class="headerlink" title="开源库"></a>开源库</h2><p><a target="_blank" rel="noopener" href="https://fblitho.com/">Litho(Android Ui声明式UI)</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/getActivity/AndroidProject">Android技术中台</a></p>
<p><a target="_blank" rel="noopener" href="https://the-algorithms.com/">The Algorithms</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/r0ysue/r0capture">Android应用层通杀抓包脚本</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/Tencent/APIJSON">API JSON</a></p>
<p><a target="_blank" rel="noopener" href="https://lottiefiles.com/">lottie(动画加载)</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/Justson/AgentWeb">AgentWeb(基于WebView)</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/smart-fun/XmlToJson">xml2Json or json2Xml</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/Blankj/AndroidUtilCode">AndroidUtilCode</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/Tim9Liu9/TimLiu-Android">Android开源库</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/Blankj/FreeProGuard">Android混淆库</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/material-components">Material Components</a></p>
<h3 id="通用"><a href="#通用" class="headerlink" title="通用"></a>通用</h3><p><a target="_blank" rel="noopener" href="https://github.com/chiclaim/AndroidAll">AndroidAll</a><br><a target="_blank" rel="noopener" href="https://github.com/Android-Jetpack-Chinese-Translation/android-jetpack-chinese-translation">jetpack-chinese-translation</a><br><a target="_blank" rel="noopener" href="https://github.com/budtmo/docker-android">Docker for android</a><br><a target="_blank" rel="noopener" href="https://github.com/material-components/material-components-android">material-components-android</a><br><a target="_blank" rel="noopener" href="https://github.com/eleme/UETool">UETool</a><br><a target="_blank" rel="noopener" href="https://github.com/lizhangqu/CoreLink">Android开发中的日常积累</a></p>
<h3 id="日历"><a href="#日历" class="headerlink" title="日历"></a>日历</h3><p><a target="_blank" rel="noopener" href="https://github.com/shrikanth7698/Collapsible-Calendar-View-Android">Collapsible-Calendar-View-Android</a><br><a target="_blank" rel="noopener" href="https://github.com/huanghaibin-dev/CalendarView">CalendarView</a><br><a target="_blank" rel="noopener" href="https://gitee.com/huanghaibin_dev/CalendarView">CalendarView</a></p>
<h3 id="日志"><a href="#日志" class="headerlink" title="日志"></a>日志</h3><p><a target="_blank" rel="noopener" href="https://github.com/yuzhijun/Light">Light(使用MappedByteBuffer)</a><br><a target="_blank" rel="noopener" href="https://github.com/yogkin/LogUtil">LogUtil</a></p>
<h3 id="图片相关"><a href="#图片相关" class="headerlink" title="图片相关"></a>图片相关</h3><p><a target="_blank" rel="noopener" href="https://github.com/Shouheng88/Compressor">Compressor</a></p>
<p><a target="_blank" rel="noopener" href="http://mp.weixin.qq.com/s?__biz=MzA5MzI3NjE2MA==&mid=2650243893&idx=1&sn=63fe28bbd9204b5f808708e14e57e1e8&chksm=8863725abf14fb4cf0cb60074e3224c3ea4852b44948d48f8ea0e45ccf21f0cf595459ec6b36&mpshare=1&scene=24&srcid=0904R1b5VK4JTlPDhG3ToVbO#rd">Android Bitmap详解</a></p>
<h3 id="状态栏"><a href="#状态栏" class="headerlink" title="状态栏"></a>状态栏</h3><p><a target="_blank" rel="noopener" href="https://github.com/gyf-dev/ImmersionBar">沉浸式状态栏&#x2F;导航栏管理</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/LALZ9_U9Qw8AuPwBs4EYRg">Android状态栏梳理</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/suP7tjsDtTLDHvkUvlC7vQ">从0到1优雅实现沉浸式状态栏</a></p>
<h3 id="标题栏"><a href="#标题栏" class="headerlink" title="标题栏"></a>标题栏</h3><p><a target="_blank" rel="noopener" href="https://github.com/wuhenzhizao/android-titlebar">android-titlebar</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/getActivity/TitleBar">titleBar</a></p>
<h3 id="通知"><a href="#通知" class="headerlink" title="通知"></a>通知</h3><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/i25JyVqgaDpsdVHDh6uwJA">Android通知</a></p>
<h3 id="webView"><a href="#webView" class="headerlink" title="webView"></a>webView</h3><p><a target="_blank" rel="noopener" href="http://mp.weixin.qq.com/s?__biz=MzAxMTI4MTkwNQ==&mid=2650825278&idx=1&sn=312f61cac2d4a2839e7457fa7e77fe76&chksm=80b7b6a0b7c03fb6f528fc23825a98a1ab33945d479eab5dea8a5464350daf2c5efd49ad1e62&scene=0#rd">WebView全面干货指南</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/4ahhEugqirdTCMf7ndaklA">WebView常见问题梳理</a></p>
<h2 id="下载"><a href="#下载" class="headerlink" title="下载"></a>下载</h2><p><a target="_blank" rel="noopener" href="https://github.com/MindorksOpenSource/PRDownloader">PRDownload</a></p>
<h3 id="打包"><a href="#打包" class="headerlink" title="打包"></a>打包</h3><p><a target="_blank" rel="noopener" href="http://mp.weixin.qq.com/s?__biz=MzA3MjgwNDIzNQ==&mid=2651944052&idx=1&sn=cb632b72330bb096c8a2ed23c681648a&chksm=84fd6690b38aef8666898a230aaec6fa17ea87f1394ebad778c221ecac98cf1da90434ccd0be&scene=0#rd">Android打包那些事</a></p>
<h2 id="组件化-x2F-模块化"><a href="#组件化-x2F-模块化" class="headerlink" title="组件化&#x2F;模块化"></a>组件化&#x2F;模块化</h2><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/WSzpJXXocajJjmWgYem3fA">Android组件化全面掌握</a><br><a href="">货拉拉 Android 模块化路由框架</a></p>
<h3 id="开源应用"><a href="#开源应用" class="headerlink" title="开源应用"></a>开源应用</h3><p><a target="_blank" rel="noopener" href="https://github.com/MichaelHuyp/Bilibili_Wuxianda">高仿BiliBili</a><br><a target="_blank" rel="noopener" href="https://gitee.com/oschina/android-app">OSChina</a><br><a target="_blank" rel="noopener" href="https://github.com/sealtalk/sealtalk-android">sealtalk</a><br><a target="_blank" rel="noopener" href="https://github.com/techGay/v9porn">v9porn</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/getsentry/sentry">开发者优先的错误跟踪和性能监测</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/huannan/XArch">XArch</a></p>
<h2 id="学习"><a href="#学习" class="headerlink" title="学习"></a>学习</h2><p><a target="_blank" rel="noopener" href="https://www.h5w3.com/33878.html">MVVM+Kotlin携程+JetPack</a></p>
<p><a target="_blank" rel="noopener" href="https://feelschaotic.gitbook.io/android-knowledge-system/">Android知识库</a></p>
<p><a target="_blank" rel="noopener" href="https://amitshekhar.me/awesome-android-complete-reference/">awesomeAndroidCompleteReference</a></p>
<p><a target="_blank" rel="noopener" href="https://android.libhunt.com/">libhunt</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/dbUXmkOd_VxmxExBSpkmyw">按下Home键再回来，发生了什么</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/UhShh0F5CaCWrbEOeRQKMg">Bugly版本更新和热修复</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/4Z4IkDK77vH4MkOTaG_ypA">为什么Activity.finish()之后10s才onDestroy</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/-3yzrmpy7AoX02_rGyGB4A">ViewPager懒加载极致优化</a></p>
<p><a target="_blank" rel="noopener" href="http://mp.weixin.qq.com/s?__biz=MzIzNDA3MDgwNA==&mid=2649230342&idx=1&sn=184150e09602c448619b62de552174b9&chksm=f0e75a7dc790d36bd1bca3e399aecf13f67d4c8466e4fc3f56c0b3426dbd4881e44fb5530d14&mpshare=1&scene=24&srcid=0417xDa4hkvhU9htvsAWX2et#rd">Android高效命令总结</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/venshine/AppUninstall">Android监听自身卸载</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s?__biz=MzAxMTI4MTkwNQ==&mid=2650825407&idx=1&sn=90c30ef6ac29553712ed37de8ac550af&chksm=80b7b621b7c03f371ff15ba2b9546efa6da9494db8d4961227aecbee44969ffa69b5178f2df5&mpshare=1&scene=24&srcid=122280am33H0NnrVk5U02QN3#rd">Android中的奇怪问题</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/ichenhe/Android-Lua">Android-lua</a></p>
<h2 id="技术博客"><a href="#技术博客" class="headerlink" title="技术博客"></a>技术博客</h2><p><a target="_blank" rel="noopener" href="https://blog.csdn.net/m0_37700275">杨充</a></p>
<h2 id="JetPack"><a href="#JetPack" class="headerlink" title="JetPack"></a>JetPack</h2><p><a target="_blank" rel="noopener" href="https://zhuanlan.zhihu.com/p/312468040">Google推荐在MVVM架构中使用Kotlin Flow</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/t8lCfE3H6uwwiUQIETfjaw">Jetpack 实战：神奇宝贝</a></p>
<p><a target="_blank" rel="noopener" href="https://my.oschina.net/androiddevs/blog/4807545">自定义WorkManager</a></p>
<p><a target="_blank" rel="noopener" href="https://juejin.cn/post/6844904079098036232">Room使用</a></p>
<p><a target="_blank" rel="noopener" href="https://www.jianshu.com/p/6a72bcd25956">WorkManager最全攻略</a></p>
<h2 id="动态代码生成"><a href="#动态代码生成" class="headerlink" title="动态代码生成"></a>动态代码生成</h2><p><a target="_blank" rel="noopener" href="https://gitcode.net/mirrors/square/javapoet">JavaPoet</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/google/auto/tree/master/service">AutoService</a></p>
<h2 id="数据库"><a href="#数据库" class="headerlink" title="数据库"></a>数据库</h2><p><a target="_blank" rel="noopener" href="https://docs.objectbox.io/getting-started">ObjectBox数据库</a></p>
<h2 id="ConstraintLayout"><a href="#ConstraintLayout" class="headerlink" title="ConstraintLayout"></a>ConstraintLayout</h2><p><a target="_blank" rel="noopener" href="https://constraintlayout.com/">constraintlayout</a></p>
<h2 id="测试"><a href="#测试" class="headerlink" title="测试"></a>测试</h2><p><a target="_blank" rel="noopener" href="https://github.com/jacoco/jacoco">Android代码覆盖率测试jacoco</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/MobSF/Mobile-Security-Framework-MobSF">移动安全漏洞测试框架（MobSF）</a></p>
<p><a target="_blank" rel="noopener" href="https://www.cnblogs.com/Appleli/p/11413229.html">uiautomator2使用教程</a></p>
<p><a target="_blank" rel="noopener" href="https://blog.csdn.net/ricky_yangrui/article/details/81415365">uiautomator2自动化测试</a></p>
<p><a target="_blank" rel="noopener" href="https://www.jianshu.com/p/cb0dcf25ab0c">appium</a></p>
<h2 id="杂项"><a href="#杂项" class="headerlink" title="杂项"></a>杂项</h2><p><a target="_blank" rel="noopener" href="https://www.jianshu.com/p/8e8cda61ad8f">Kotlin+Mvvm+Jetpack仿天眼App</a></p>
<p><a target="_blank" rel="noopener" href="https://dzone.com/articles/introduction-to-java-bytecode">Java字节码</a></p>
<p><a target="_blank" rel="noopener" href="https://www.androidos.net.cn/sourcecode">Android源码在线</a></p>
<p><a target="_blank" rel="noopener" href="https://www.indiehackers.com/">indiehackers</a></p>
<p><a target="_blank" rel="noopener" href="https://barnacl.es/">barnacl</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/aeddirrO9UTyf0S5u8EFVw">Android开发中遇到的奇怪问题</a></p>
<p><a target="_blank" rel="noopener" href="https://codingwithmitch.com/">codingWithMitch</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/oAZWeZEIbgnYQELJwtW7ZA">脱离AS手工创造APK文件</a></p>
<p><a target="_blank" rel="noopener" href="https://www.androiddevtools.cn/">AndroidDevTools</a></p>
<p><a target="_blank" rel="noopener" href="https://www.jianshu.com/p/eeb23a4ca91d">键盘挡住输入框解决办法</a></p>
<p><a target="_blank" rel="noopener" href="https://bezier.method.ac/">贝塞尔曲线</a></p>
<p><a target="_blank" rel="noopener" href="https://shape.method.ac/">Shape</a></p>
<h2 id="Gradle"><a href="#Gradle" class="headerlink" title="Gradle"></a>Gradle</h2><p><a target="_blank" rel="noopener" href="https://blog.csdn.net/zhaoyanjun6/article/details/77678577">Gradle使用总结</a></p>
<p><a target="_blank" rel="noopener" href="https://juejin.cn/post/6882178101191639053">Gradle爬坑指南</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/8Rv_skAL7qeVyErHMcP6fA">自动化脚本多渠道加固、打包</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/_CahiMe8A6m40TI-iiP9kw">Gradle神奇地打各种渠道包</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/iQWQhtXlbj-elMgOhE-s1g">Gradle Plugin</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/TVuF8_304DZQ1wbe1vm1ag">Gradle</a></p>
<p><a target="_blank" rel="noopener" href="https://docs.gradle.org/current/dsl/org.gradle.api.Project.html#org.gradle.api.Project:sourceSets(groovy.lang.Closure)">Gradle DSL</a></p>
<h2 id="ADB"><a href="#ADB" class="headerlink" title="ADB"></a>ADB</h2><p><a target="_blank" rel="noopener" href="https://github.com/Genymobile/scrcpy">scrcpy</a></p>
<p><a target="_blank" rel="noopener" href="https://www.cnblogs.com/andy-songwei/p/9773379.html">adb命令</a></p>
<h2 id="看了一个半的"><a href="#看了一个半的" class="headerlink" title="看了一个半的"></a>看了一个半的</h2><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/7UCJ1HqN4vw5dNE7mw470Q">攒了一个月的面试题及解答</a></p>
<h2 id="面试"><a href="#面试" class="headerlink" title="面试"></a>面试</h2><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/SPpkP9KAEdG27IGjppE9bw">Android中高级工程师面试复习分类</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/B-MWKbKrYhiXHmntkrrb-A">Android-高质量面试文章整理</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/7vH4yRvd_lrmCQVmrY5skg">面试总结</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/5NTA5ARSVNSRMufiimB8gw">Android中高级面试题准备整理</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/m67nCo_Y2ZXtXiCrJ_KeDA">面试是一种合理合法的 “歧视”</a></p>
<p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s/NXKXkNjVVFDryJPwydfzwA">提高刷题幸福感</a></p>
<p><a target="_blank" rel="noopener" href="http://mp.weixin.qq.com/s?__biz=MzAxMTI4MTkwNQ==&mid=2650825102&idx=1&sn=4cc793e81189c68f664327038f878944&chksm=80b7b510b7c03c06aa3fe1f0984d77990bbe757ef7cb85e3a111aaaedd1d7e7671edf929b451&mpshare=1&scene=2&srcid=03126CSSaYRUxDxbAmTuv2YL&from=timeline#rd">BAT大厂面试题</a></p>
<h2 id="功能设计"><a href="#功能设计" class="headerlink" title="功能设计"></a>功能设计</h2><p><a target="_blank" rel="noopener" href="https://mp.weixin.qq.com/s?__biz=MzIxNzU1Nzk3OQ==&mid=2247487485&idx=1&sn=d031060404c06ddbe519cf0afd662574&chksm=97f6b149a081385f843935b7dcd8d43b6daac98fe7294e129355eb89c909991af0d1d2631792&mpshare=1&scene=1&srcid=10221d9VtJrYSCz9DF8AFtF2#rd">如何实现一个图片加载框架</a></p>
<h2 id="其他"><a href="#其他" class="headerlink" title="其他"></a>其他</h2><p><a target="_blank" rel="noopener" href="http://androidxref.com/">androidxref</a></p>
<p><a target="_blank" rel="noopener" href="https://www.androidos.net.cn/sourcecode">android社区</a></p>
<p><a target="_blank" rel="noopener" href="https://www.androiddevtools.cn/">Android工具</a></p>
<p><a target="_blank" rel="noopener" href="http://angrytools.com/android/button/">Android Button Maker</a></p>
<p><a target="_blank" rel="noopener" href="https://svg.wxeditor.com/">SVG在线编辑工具</a></p>
<p><a target="_blank" rel="noopener" href="https://devknox.io/documentation/">devKnox(Android代码安全检测工具)</a></p>
<p><a target="_blank" rel="noopener" href="http://p.codekk.com/">codeKK</a></p>
<p><a target="_blank" rel="noopener" href="https://android-arsenal.com/">Android Arsena</a></p>
<p><a target="_blank" rel="noopener" href="https://mirrors.tuna.tsinghua.edu.cn/help/termux/">termux镜像</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/donnemartin/system-design-primer">大型项目设计</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/jwasham/coding-interview-university/blob/main/translations/README-cn.md">编程面试大学</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/CyC2018/CS-Notes">技术面试必备基础知识</a></p>
<p><a target="_blank" rel="noopener" href="https://github.com/kdn251/interviews/blob/master/README-zh-cn.md">软件工程技术面试指南</a></p>
<p><a target="_blank" rel="noopener" href="https://www.jianshu.com/p/c4df451673e0">Android高性能日志写入方案</a></p>

    </div>
    </div>
    </article>


  <footer class="main-footer sticky footer-type-1">
  <div class="footer-inner">
    <!-- Add your copyright text here -->
    <p>
      
      &copy; 2023 - 2025
      <a href="javascript:void(0);"><strong>jiangyao</strong></a> | Design by <a href="http://viggoz.com" target="_blank"><strong>Viggo</strong></a> | Power by <a href="https://hexo.io/" target="_blank"><strong>Hexo</strong></a> & <a href="https://github.com/HCLonely/hexo-theme-webstack/" target="_blank"><strong>hexo-theme-webstack</strong></a>
    </p>
    
    <p>
      <span id="busuanzi_container_site_pv">本站总访问量<span id="busuanzi_value_site_pv"></span></span> |
      <span id="busuanzi_container_site_uv">本站总访客数<span id="busuanzi_value_site_uv"></span></span>
    </p>
    
    <div class="go-up">
      <a href="#" rel="go-top">
        <i class="fas fa-angle-up"></i>
      </a>
    </div>
  </div>
</footer>
</div>
</div>

<script src="/OpenBlog/js/bootstrap.min.js"></script>
<script src="/OpenBlog/js/TweenMax.min.js"></script>
<script src="/OpenBlog/js/resizeable.min.js"></script>
<script src="/OpenBlog/js/joinable.js"></script>
<script src="/OpenBlog/js/xenon-api.min.js"></script>
<script src="/OpenBlog/js/xenon-toggles.min.js"></script>
<script src="/OpenBlog/js/xenon-custom.min.js"></script>


<script async src="https://busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>



<script src="/OpenBlog/js/lozad.min.js"></script>



  
  <!-- 直接添加html内容即可 -->
<!-- 可设置多行 -->
  
</body>

</html>
